`timescale 1ns / 10ps
`define clock_period 20

module timer_demo_tb;

	reg clk_50M;
	reg rst_n;
	//wire[7:0] led_out;
	//wire[23:0] led_state;
	wire[15:0] led_temp;
	//wire[5:0] minute;
	//wire[5:0] second;
	
	timer_demo demo0(
		.Clk_50M(clk_50M),
		.Rst_n(rst_n),
		.Led_state(led_temp)
	);

	always #(`clock_period / 2) clk_50M = ~clk_50M;
	
	initial begin
		rst_n = 1'b0;
		clk_50M = 1'b0;
		#(`clock_period)
		rst_n = 1'b1;
		
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		#(`clock_period * 5_000_000)
		
		$stop;
	end
	
endmodule
